package cn.fl.capital.transform;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.export.dto.CapPayListRepDTO;
import cn.fl.capital.vo.CapPayListRepVO;

import java.util.ArrayList;
import java.util.List;

/**
* @Description: 资金放款报表 转换器
* VO是客户端传递数据到服务端进行转换的数据
* VO转换数据变成DTO传递到服务端
* VO不能在服务端出现
*/
public class CapPayListRepExportVOTransform {


   /**
	* DTO 转  VO
	* @param dto CapPayListRepDTO
	* @return CapPayListRepVO
	*/
   public static CapPayListRepVO toVO(CapPayListRepDTO dto) {
	   CapPayListRepVO  vo = null;
	   if (dto != null) {
		   vo = new CapPayListRepVO();
		   vo.setId(dto.getId());
		   vo.setPrInsNo(dto.getPrInsNo());//流程编号
		   vo.setPaySchNo(dto.getPaySchNo());//支付表号
		   vo.setCstMgrOrgCd(dto.getCstMgrOrgCd());//省公司（客户经理组织架构）
		   vo.setCstMgrOrgCdNm(dto.getCstMgrOrgCdNm());//省公司名称（客户经理组织架构）
		   vo.setRuTaskNm(dto.getRuTaskNm());//RU_TASK_NM
		   vo.setPrCrtTm(dto.getPrCrtTm());//创建时间
		   vo.setCstNm(dto.getCstNm());//客户名称
		   vo.setRcptUnt(dto.getRcptUnt());//收款单位/人
		   vo.setPayeeBkNm(dto.getPayeeBkNm());//收款银行
		   vo.setAccNo(dto.getAccNo());//收款账号
		   vo.setBuOrgCd(dto.getBuOrgCd());//所属事业部
		   vo.setBuOrgCdNm(dto.getBuOrgCdNm());//所属事业部名称
		   vo.setPrjTypCd(dto.getPrjTypCd());//项目类型
		   vo.setPrjTypCdNm(dto.getPrjTypCdNm());//项目类型名称
		   vo.setPrdNm(dto.getPrdNm());//租赁物名称
		   vo.setPrdAmt(dto.getPrdAmt());//设备单价
		   vo.setPayAmt(dto.getPayAmt());//应付金额
		   vo.setFstRentAmt(dto.getFstRentAmt());//应收首期租金
		   vo.setGrtAmt(dto.getGrtAmt());//应收保证金

		   vo.setCrtTm(dto.getCrtTm());//创建时间
		   vo.setCrtUsrId(dto.getCrtUsrId());//创建人
		   vo.setMdfTm(dto.getMdfTm());//修改时间
		   vo.setMdfUsrId(dto.getMdfUsrId());//修改人
	   }
	   return vo;
   }

   /**
	* VO 转 DTO
	* @param vo CapPayListRepVO
	* @return CapPayListRepDTO
	*/
   public static CapPayListRepDTO toDTO(CapPayListRepVO vo) {
	   CapPayListRepDTO dto = null;
	   if (vo != null) {
		   dto = new CapPayListRepDTO();
		   dto.setId(vo.getId());
		   dto.setPrInsNo(vo.getPrInsNo());//流程编号
		   dto.setPaySchNo(vo.getPaySchNo());//支付表号
		   dto.setCstMgrOrgCd(vo.getCstMgrOrgCd());//省公司（客户经理组织架构）
		   dto.setCstMgrOrgCdNm(vo.getCstMgrOrgCdNm());//省公司名称（客户经理组织架构）
		   dto.setRuTaskNm(vo.getRuTaskNm());//RU_TASK_NM
		   dto.setPrCrtTm(vo.getPrCrtTm());//创建时间
		   dto.setCstNm(vo.getCstNm());//客户名称
		   dto.setRcptUnt(vo.getRcptUnt());//收款单位/人
		   dto.setPayeeBkNm(vo.getPayeeBkNm());//收款银行
		   dto.setAccNo(vo.getAccNo());//收款账号
		   dto.setBuOrgCd(vo.getBuOrgCd());//所属事业部
		   dto.setBuOrgCdNm(vo.getBuOrgCdNm());//所属事业部名称
		   dto.setPrjTypCd(vo.getPrjTypCd());//项目类型
		   dto.setPrjTypCdNm(vo.getPrjTypCdNm());//项目类型名称
		   dto.setPrdNm(vo.getPrdNm());//租赁物名称
		   dto.setPrdAmt(vo.getPrdAmt());//设备单价
		   dto.setPayAmt(vo.getPayAmt());//应付金额
		   dto.setFstRentAmt(vo.getFstRentAmt());//应收首期租金
		   dto.setGrtAmt(vo.getGrtAmt());//应收保证金

		   dto.setCrtTm(vo.getCrtTm());//创建时间
		   dto.setCrtUsrId(vo.getCrtUsrId());//创建人
		   dto.setMdfTm(vo.getMdfTm());//修改时间
		   dto.setMdfUsrId(vo.getMdfUsrId());//修改人
	   }
	   return dto;
   }

   /**
	* DTO集合 转 VO集合
	* @param list List<CapPayListRep>
	* @return List<CapPayListRepDTO>
	*/
   public static List<CapPayListRepVO> toVOList(List<CapPayListRepDTO> list) {
	   List<CapPayListRepVO>  voList = new ArrayList<CapPayListRepVO>();
	   if(CollectionUtils.isNotEmpty(list)){
		   for (CapPayListRepDTO dto : list) {
			   voList.add(toVO(dto));
		   }
	   }
	   return voList;
   }

   /**
	*  VO集合 转 DTO集合
	* @param list List<CapPayListRepVO>
	* @return List<CapPayListRepDTO>
	*/
   public static List<CapPayListRepDTO> toDTOList(List<CapPayListRepVO> list) {
	   List<CapPayListRepDTO>  dtoList = new ArrayList<>();
	   if(CollectionUtils.isNotEmpty(list)){
		   for (CapPayListRepVO vo : list) {
			   dtoList.add(toDTO(vo));
		   }
	   }
	   return dtoList;
   }
}
